磁盤陣列(Redundant Arrays of Independent Disks,RAID),有“獨(dú)立磁盤構(gòu)成的具有冗余能力的陣列”之意。
磁盤陣列是由很多價(jià)格較便宜的磁盤,組合成一個(gè)容量巨大的磁盤組,利用個(gè)別磁盤提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成許多區(qū)段,分別存放在各個(gè)硬盤上。
磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數(shù)組中任意一個(gè)硬盤故障時(shí),仍可讀出數(shù)據(jù),在數(shù)據(jù)重構(gòu)時(shí),將數(shù)據(jù)經(jīng)計(jì)算后重新置入新硬盤中。
優(yōu)點(diǎn)
提高傳輸速率。RAID通過在多個(gè)磁盤上同時(shí)存儲(chǔ)和讀取數(shù)據(jù)來大幅提高存儲(chǔ)系統(tǒng)的數(shù)據(jù)吞吐量(Throughput)。在RAID中,可以讓很多磁盤驅(qū)動(dòng)器同時(shí)傳輸數(shù)據(jù),而這些磁盤驅(qū)動(dòng)器在邏輯上又是一個(gè)磁盤驅(qū)動(dòng)器,所以使用RAID可以達(dá)到單個(gè)磁盤驅(qū)動(dòng)器幾倍、幾十倍甚至上百倍的速率。這也是RAID最初想要解決的問題。因?yàn)楫?dāng)時(shí)CPU的速度增長很快,而磁盤驅(qū)動(dòng)器的數(shù)據(jù)傳輸速率無法大幅提高,所以需要有一種方案解決二者之間的矛盾。RAID最后成功了。通過數(shù)據(jù)校驗(yàn)提供容錯(cuò)功能。普通磁盤驅(qū)動(dòng)器無法提供容錯(cuò)功能,如果不包括寫在磁盤上的CRC(循環(huán)冗余校驗(yàn))碼的話。RAID容錯(cuò)是建立在每個(gè)磁盤驅(qū)動(dòng)器的硬件容錯(cuò)功能之上的,所以它提供更高的安全性。在很多RAID模式中都有較為完備的相互校驗(yàn)/恢復(fù)的措施,甚至是直接相互的鏡像備份,從而大大提高了RAID系統(tǒng)的容錯(cuò)度,提高了系統(tǒng)的穩(wěn)定冗余性。
缺點(diǎn)
RAID0沒有冗余功能,如果一個(gè)磁盤(物理)損壞,則所有的數(shù)據(jù)都無法使用。RAID1磁盤的利用率最高只能達(dá)到50%(使用兩塊盤的情況下),是所有RAID級(jí)別中最低的。RAID0+1以理解為是RAID 0和RAID 1的折中方案。RAID 0+1可以為系統(tǒng)提供數(shù)據(jù)安全保障,但保障程度要比 Mirror低而磁盤空間利用率要比Mirror高。